package annotationAndReflection;

/**
 * @author mubei
 * @date 2021/11/25
 * @description  获取类对象的各种方式
 */
public class GetClassTest {

    public static void main(String[] args) throws Exception {
        // 常用于配置文件
        Class<?> cls0 = Class.forName("annotationAndReflection.cat");

        // 常用于参数传递
        Class<Cat> cls1 = Cat.class;

        Cat cat = new Cat();
        Class cls2 = cat.getClass();

        // 类加载器
        /*
        * 1.先得到类加载器
        * 2.通过类加载器得到Class对象
        * */
        ClassLoader classLoader = cat.getClass().getClassLoader();
        Class<?> cls3 = classLoader.loadClass("annotationAndReflection.cat");



    }
}
